Array Data Group

An array data group enables you to display related register data in an array (in other words, a table). Usually such register data is intended by a field device manufacturer to be displayed or consumed as an index or array. A single data group can include a combination of array and non-array data, but it can include only one array. An array data group is always read only.

There are two types of array data groups in CygNet:

AutoCom EIE Array Diagram

AutoCom EIE Array Diagram

See the following subsections for more information:

For more information, see Device Template Files.

Example – Non-Historical Array

<PrgReg niceName="Program Registers" hasArray="true">

<dgElements secLev="4">

<RegUs desc="UShort (698)" type="ui2" regNum="698" arrSize="32"/>

<RegS desc="Short (730)" type="i2" regNum="730" arrSize="32"/>

<RegUl desc="ULong (762)" type="ui4" regNum="762" arrSize="16"/>

<RegL desc="Long (778)" type="i4" regNum="778" arrSize="16"/>

</dgElements>

</PrgReg>

Structure and Components – Non-Historical Array

<DataGroup hasArray="true">

<dgElements>

<DEID arrRegOff=""arrSize=""/>

</dgElements>

</DataGroup>

Example – Historical Array with Struct Data Type

<!-- The data group in the example below is an event log containing up to 200 records. Each record is made up of a timestamp, card event ID, card event description, and two kinds of event information. AutoCom specifies that the data that makes up an event-log record is grouped together on the field device within a single register. This setup requires the use of a struct data type in the block element in order to break up the event-record data into its constituent parts. In the example below, data retrieval begins at register number 65100 and ends at register 67099. Each register in the block is 10 bytes in length; the 10 bytes are structured to represent different kinds of event data. The structOff attribute used in data group elements maps data from the 10 bytes of data in a register to the correct data group elements. -->

<EventLog niceName="Event Log" hasHistory="true" isOldToNew="false">

<dgElements arrSize="200">

<DateTime desc="Event Time" structOff="1:0" type="r8" sourceType="ui4" cvtF="TimeSeconds" isUTC="true"/>

<EventId desc="Card Event ID" structOff="1:4" type="ui2" hidden="true"/>

<Event desc="Card Event" type="string" ref="EventId" mapVal="EEventId"/>

<EvtInfo1 desc="Event Info 1" structOff="1:6" type="ui2"/>

<EvtInfo2 desc="Event Info 2" structOff="1:8" type="ui2"/>

</dgElements>

<readBlocks>

<block1 regNum="65100" regCnt="200" type="struct" len="10"/>

</readBlocks>

</EventLog>

Structure and Components – Historical Array with Struct Data Type

<DataGroup hasHistory="true">

<dgElements arrSize="">

<DEID structOff=""/>

</dgElements>

<readBlocks>

<block regNum="" regCnt="" type="struct" len=""/>

</readBlocks>

</DataGroup>

Back to top